home *** CD-ROM | disk | FTP | other *** search
/ Hyper Animation Series: Viper (Limited Edition) / Hyper Animation Series: VIPER (Limited Edition).iso / pc / SYSTEM / class / BOSSDestroy.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-08-04  |  2.8 KB  |  72 lines

  1. class BOSSDestroy extends EnemyAction {
  2.    private int fxTime = 0;
  3.    private int fxDest = 0;
  4.    private int nDest = 0;
  5.  
  6.    public BOSSDestroy(StgFrame var1) {
  7.       super(var1);
  8.       Enemy var2 = var1.getEnemy();
  9.       var2.checkHitBom();
  10.    }
  11.  
  12.    public boolean action(EnemyIndex var1) {
  13.       super.resource.getEnemySpeed();
  14.       Enemy var2 = super.resource.getEnemy();
  15.       int var3 = -65536;
  16.       byte var4 = 0;
  17.       ((StgObjectIndex)var1).movePosition(var3, var4, 0);
  18.       if (this.fxTime >= this.fxDest << 1 && this.nDest < 64) {
  19.          this.putDest(var1);
  20.          this.fxDest += 65536;
  21.          ++this.nDest;
  22.       }
  23.  
  24.       if (this.fxTime >= 4194304) {
  25.          super.resource.getGameProcess().setAttr(3);
  26.          ((StgObject)var2).delete(var1);
  27.          return true;
  28.       } else {
  29.          this.fxTime += 65536;
  30.          return true;
  31.       }
  32.    }
  33.  
  34.    private boolean putDest(EnemyIndex var1) {
  35.       Enemy var2 = super.resource.getEnemy();
  36.       Position var3 = ((StgObjectIndex)var1).getPosition();
  37.       ((StgObjectIndex)var1).getPosition();
  38.       Position var6 = new Position(var3.getX() + -4194304 + (Fixed.Random() << 7), var3.getY() + -4194304 + (Fixed.Random() << 7), 0);
  39.       int var7 = Fixed.Mul(Fixed.Random(), 196608) >>> 16;
  40.       SpriteAnimeData var5;
  41.       switch (var7) {
  42.          case 0:
  43.             var5 = StgData.getSpriteAnimeDestroyA();
  44.             break;
  45.          case 1:
  46.             var5 = StgData.getSpriteAnimeDestroyA();
  47.             break;
  48.          case 2:
  49.             var5 = StgData.getSpriteAnimeDestroyB();
  50.             break;
  51.          default:
  52.             var5 = StgData.getSpriteAnimeDestroyB();
  53.       }
  54.  
  55.       EnemyIndex var4 = new EnemyIndex(var6, var5, new Position(262144, 262144, 0), 0, new EnemyDestroy(super.resource), 0, 65536, 100, 0);
  56.       return ((StgObject)var2).add(var4);
  57.    }
  58.  
  59.    public boolean checkHitPlayerShip(EnemyIndex var1, PlayerShipIndex var2) {
  60.       return false;
  61.    }
  62.  
  63.    public boolean checkHitPlayerShot(EnemyIndex var1, PlayerShotIndex var2) {
  64.       boolean var3 = false;
  65.       return var3;
  66.    }
  67.  
  68.    public boolean checkHitBom(EnemyIndex var1) {
  69.       return true;
  70.    }
  71. }
  72.